package cn.edu.nju.software.buyer;


/**
* cn/edu/nju/software/buyer/_SystemAStub.java .
* �� IDL-to-Java ������������ֲ�����汾 "3.2" ���
* ���� buyerA.idl
* 2009��4��7�� ���ڶ� ����09ʱ31��16�� CST
*/

public class _SystemAStub extends org.omg.CORBA.portable.ObjectImpl implements cn.edu.nju.software.buyer.SystemA
{


  /*
  	��\
  		?SystemB(
  		??'0@��?z??10 11
  			
  	?p
  		orderNo ?U��
  		
  	?��
  		'0@
    */
  public String getAddress (String orderNo)
  {
            org.omg.CORBA.portable.InputStream $in = null;
            try {
                org.omg.CORBA.portable.OutputStream $out = _request ("getAddress", true);
                $out.write_string (orderNo);
                $in = _invoke ($out);
                String $result = $in.read_string ();
                return $result;
            } catch (org.omg.CORBA.portable.ApplicationException $ex) {
                $in = $ex.getInputStream ();
                String _id = $ex.getId ();
                throw new org.omg.CORBA.MARSHAL (_id);
            } catch (org.omg.CORBA.portable.RemarshalException $rm) {
                return getAddress (orderNo        );
            } finally {
                _releaseReply ($in);
            }
  } // getAddress


  /*
  	��\
  		?SystemB(
  		?��??'��?z?? 12
  			
  	?p
  		orderNo ?U��
    */
  public void goodsIssued (String orderNo)
  {
            org.omg.CORBA.portable.InputStream $in = null;
            try {
                org.omg.CORBA.portable.OutputStream $out = _request ("goodsIssued", true);
                $out.write_string (orderNo);
                $in = _invoke ($out);
                return;
            } catch (org.omg.CORBA.portable.ApplicationException $ex) {
                $in = $ex.getInputStream ();
                String _id = $ex.getId ();
                throw new org.omg.CORBA.MARSHAL (_id);
            } catch (org.omg.CORBA.portable.RemarshalException $rm) {
                goodsIssued (orderNo        );
            } finally {
                _releaseReply ($in);
            }
  } // goodsIssued


  /*
  	��\
  		?SystemC(
  		?��?��?z??14
  			
  	?p
  		orderNo ?U��
    */
  public void dealSuccess (String orderNo)
  {
            org.omg.CORBA.portable.InputStream $in = null;
            try {
                org.omg.CORBA.portable.OutputStream $out = _request ("dealSuccess", true);
                $out.write_string (orderNo);
                $in = _invoke ($out);
                return;
            } catch (org.omg.CORBA.portable.ApplicationException $ex) {
                $in = $ex.getInputStream ();
                String _id = $ex.getId ();
                throw new org.omg.CORBA.MARSHAL (_id);
            } catch (org.omg.CORBA.portable.RemarshalException $rm) {
                dealSuccess (orderNo        );
            } finally {
                _releaseReply ($in);
            }
  } // dealSuccess

  // Type-specific CORBA::Object operations
  private static String[] __ids = {
    "IDL:buyer/SystemA:1.0"};

  public String[] _ids ()
  {
    return (String[])__ids.clone ();
  }

  private void readObject (java.io.ObjectInputStream s) throws java.io.IOException
  {
     String str = s.readUTF ();
     String[] args = null;
     java.util.Properties props = null;
     org.omg.CORBA.Object obj = org.omg.CORBA.ORB.init (args, props).string_to_object (str);
     org.omg.CORBA.portable.Delegate delegate = ((org.omg.CORBA.portable.ObjectImpl) obj)._get_delegate ();
     _set_delegate (delegate);
  }

  private void writeObject (java.io.ObjectOutputStream s) throws java.io.IOException
  {
     String[] args = null;
     java.util.Properties props = null;
     String str = org.omg.CORBA.ORB.init (args, props).object_to_string (this);
     s.writeUTF (str);
  }
} // class _SystemAStub
